


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    Promise初体验
    <!-- 
        Promise 是ES6异步编程的一种解决方案,解决回调地狱问题。
        许诺器，本质是构造函数，学名叫class 可以 new 
        Promise内部通常放的是将来要执行的异步代码，而这些异步代码执行完成后会有两种结果：成功或失败。
        因此Promise有三种状态：原理
​	     pending(初始状态 运行中) 、fullfill/resolve(成功状态)、rejecte(失败状态)。

        当在Promise内部执行了resolve()成功时的回调方法则执行定义在then()中的成功时的回调函数，
        并将Promise的pending初始状态转换fullfill/resolve成功状态；

        当在Promise内部执行了resolve()成功时的回调方法则执行定义在then()中
        第二个参数的失败时的回调函数或定义在catch()中失败时的回调函数，
        并将Promise的pending初始状态转换reject失败状态。 
     -->
       
    <script src="../jquery.js"></script>
    <script>




    Promise.all([
        $.ajax({
            url:"../text/arr.txt",
            dataType:"json",
        }),
        $.ajax({
            url:"../text/json.txt",
            dataType:"json",
        }),
        $.ajax({
            url:"../text/num.txt",
            dataType:"json",
        })
    ])
    .then(res=>{
            console.log(res);
            const [res1,res2,res3] = res;
            console.log(res1+"resolved1");
            console.log(res2+"resolved2");
            console.log(res3+"resolved3");
       },(err)=>{
            console.log(err+ "失败");   
    })

    </script>
</body>
</html>